Computer vision monitoring and surveillance systems are typically implemented using algorithms that can handle images from a single camera. In these systems, video from one camera is fed into a video surveillance system, which uses a computer vision algorithm to determine events in the video images. Such events, for example, could include unauthorized personnel in an area, a queue that is too long, a door left open, lights left on, or smoke.
There are also multi-camera computer-vision based monitoring systems. These multi-camera setups require either (i) multiple video inputs, which are handled independently, or (ii) a computer-controllable multiplexer to individually select, among the various cameras, the video input feed to be sent to the algorithm at any given time. Generally, frame-accurate multiplexers (called “synchronous” multiplexers herein) that can be controlled by computer are significantly more expensive than those that switch from one camera to the next asynchronously.
However, asynchronous video multiplexers present a problem in that their switching is not known beforehand. In other words, a synchronous video multiplexer will switch from camera to camera in manner that can be determined before the multiplexer begins to switch or that can be set through the use of a computer interface. An asynchronous video multiplexer will not switch from camera to camera in a known manner and is generally not programmable. When a video monitoring system is staffed by an operator, then using an asynchronous multiplexer is not a significant detriment, because the operator can determine which room is being displayed by a video display, even when the display only shows a predetermined number of frames of video from one camera of the multiplexed stream of video. It is also relatively easy for an operator to determine what events are occurring in each room.
Conversely, current computer vision algorithms do not analyze video from an asynchronous video multiplexer. Consequently, a need exists for video monitoring and surveillance systems that allow the use of asynchronous video multiplexers and yet still adequately monitor events on each of a number of camera feeds.